home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 49 / Amiga Format CD49 (2000-01-17)(Future Publishing)(GB)(Track 1 of 3)[!][issue 2000-02].iso / -serious- / programming / e / powerd0.06 / modules / devices / inputevent.m < prev    next >
Text File  |  1999-11-30  |  3KB  |  128 lines

  1. MODULE    'devices/timer',
  2.             'intuition/screens',
  3.             'utility/hooks',
  4.             'utility/tagitem'
  5.  
  6. CONST    IECLASS_NULL=0,
  7.         IECLASS_RAWKEY=1,
  8.         IECLASS_RAWMOUSE=2,
  9.         IECLASS_EVENT=3,
  10.         IECLASS_POINTERPOS=4,
  11.         IECLASS_TIMER=6,
  12.         IECLASS_GADGETDOWN=7,
  13.         IECLASS_GADGETUP=8,
  14.         IECLASS_REQUESTER=9,
  15.         IECLASS_MENULIST=10,
  16.         IECLASS_CLOSEWINDOW=11,
  17.         IECLASS_SIZEWINDOW=12,
  18.         IECLASS_REFRESHWINDOW=13,
  19.         IECLASS_NEWPREFS=14,
  20.         IECLASS_DISKREMOVED=15,
  21.         IECLASS_DISKINSERTED=16,
  22.         IECLASS_ACTIVEWINDOW=17,
  23.         IECLASS_INACTIVEWINDOW=18,
  24.         IECLASS_NEWPOINTERPOS=19,
  25.         IECLASS_MENUHELP=20,
  26.         IECLASS_CHANGEWINDOW=21,
  27.         IECLASS_MAX=21,
  28.         IESUBCLASS_COMPATIBLE=0,
  29.         IESUBCLASS_PIXEL=1,
  30.         IESUBCLASS_TABLET=2,
  31.         IESUBCLASS_NEWTABLET=3
  32.  
  33. OBJECT IEPointerPixel
  34.     Screen:PTR TO Screen,
  35.     Positionx:INT,
  36.     Positiony:INT
  37.  
  38. OBJECT IEPointerTablet
  39.     RangeX:UWORD,
  40.     RangeY:UWORD,
  41.     ValueX:UWORD,
  42.     ValueY:UWORD,
  43.     Pressure:INT
  44.  
  45. OBJECT IENewTablet
  46.     CallBack:PTR TO Hook,
  47.     ScaledX:UWORD,
  48.     ScaledY:UWORD,
  49.     ScaledXFraction:UWORD,
  50.     ScaledYFraction:UWORD,
  51.     TabletX:LONG,
  52.     TabletY:LONG,
  53.     RangeX:LONG,
  54.     RangeY:LONG,
  55.     TagList:PTR TO TagItem
  56.  
  57. CONST    IECODE_UP_PREFIX=$80,
  58.         IECODEB_UP_PREFIX=7,
  59.         IECODE_KEY_CODE_FIRST=0,
  60.         IECODE_KEY_CODE_LAST=$77,
  61.         IECODE_COMM_CODE_FIRST=$78,
  62.         IECODE_COMM_CODE_LAST=$7F,
  63.         IECODE_C0_FIRST=0,
  64.         IECODE_C0_LAST=31,
  65.         IECODE_ASCII_FIRST=$20,
  66.         IECODE_ASCII_LAST=$7E,
  67.         IECODE_ASCII_DEL=$7F,
  68.         IECODE_C1_FIRST=$80,
  69.         IECODE_C1_LAST=$9F,
  70.         IECODE_LATIN1_FIRST=$A0,
  71.         IECODE_LATIN1_LAST=$FF,
  72.         IECODE_LBUTTON=$68,
  73.         IECODE_RBUTTON=$69,
  74.         IECODE_MBUTTON=$6A,
  75.         IECODE_NOBUTTON=$FF,
  76.         IECODE_NEWACTIVE=1,
  77.         IECODE_NEWSIZE=2,
  78.         IECODE_REFRESH=3,
  79.         IECODE_REQSET=1,
  80.         IECODE_REQCLEAR=0,
  81.         IEQUALIFIER_LSHIFT=1,
  82.         IEQUALIFIER_RSHIFT=2,
  83.         IEQUALIFIER_CAPSLOCK=4,
  84.         IEQUALIFIER_CONTROL=8,
  85.         IEQUALIFIER_LALT=16,
  86.         IEQUALIFIER_RALT=$20,
  87.         IEQUALIFIER_LCOMMAND=$40,
  88.         IEQUALIFIER_RCOMMAND=$80,
  89.         IEQUALIFIER_NUMERICPAD=$100,
  90.         IEQUALIFIER_REPEAT=$200,
  91.         IEQUALIFIER_INTERRUPT=$400,
  92.         IEQUALIFIER_MULTIBROADCAST=$800,
  93.         IEQUALIFIER_MIDBUTTON=$1000,
  94.         IEQUALIFIER_RBUTTON=$2000,
  95.         IEQUALIFIER_LEFTBUTTON=$4000,
  96.         IEQUALIFIER_RELATIVEMOUSE=$8000,
  97.         IEQUALIFIERB_LSHIFT=0,
  98.         IEQUALIFIERB_RSHIFT=1,
  99.         IEQUALIFIERB_CAPSLOCK=2,
  100.         IEQUALIFIERB_CONTROL=3,
  101.         IEQUALIFIERB_LALT=4,
  102.         IEQUALIFIERB_RALT=5,
  103.         IEQUALIFIERB_LCOMMAND=6,
  104.         IEQUALIFIERB_RCOMMAND=7,
  105.         IEQUALIFIERB_NUMERICPAD=8,
  106.         IEQUALIFIERB_REPEAT=9,
  107.         IEQUALIFIERB_INTERRUPT=10,
  108.         IEQUALIFIERB_MULTIBROADCAST=11,
  109.         IEQUALIFIERB_MIDBUTTON=12,
  110.         IEQUALIFIERB_RBUTTON=13,
  111.         IEQUALIFIERB_LEFTBUTTON=14,
  112.         IEQUALIFIERB_RELATIVEMOUSE=15
  113.  
  114. OBJECT InputEvent
  115.     NextEvent:PTR TO InputEvent,
  116.     Class:CHAR,
  117.     SubClass:CHAR,
  118.     Code:UWORD,
  119.     Qualifier:UWORD,
  120. -> a) next four CHARs are unioned as "eventaddress:LONG"
  121. -> b) next two CHARs are unioned as "x:INT"
  122.     Prev1DownCode:CHAR,
  123.     Prev1DownQual:CHAR,
  124. -> b) next two CHARs are unioned "y:INT"
  125.     Prev2DownCode:CHAR,
  126.     Prev2DownQual:CHAR,
  127.     TimeStamp:TimeVal
  128.